老师,那个irq domain 级联的时候是怎么转换的,是比如一个gpio产生中断

🔍 溯源 ✍️ Jack | 📅 2025-02-24 | 👍 0 | 原帖↗
#知识星球 #立芯嵌入式 #来源/立芯星球 #技术/Linux内核 #技术/中断 #质量/普通

原帖 | Jack | 2025-02-24 09:36 | 👍0 | 阅读约1

老师,那个irq domain 级联的时候是怎么转换的,是比如一个gpio产生中断,有个硬件中断号产生,在gpio这个irq domain翻译成软件中断号,直接发送给gic?还是说再映射成一个硬件中断号再发给gic最后在转换成一个软件中断号?

答:
中间有很多的一个中断控制器,它是一层一层级连的。然后你可以把它当做一个黑盒子,左边的输入就是一个GPIO number, 也就是你的硬件中断号。右边的输出其实也是一个硬件中断号,但是呢,软件会把你这个ID翻译成软件中断号,这个软件中断号是不固定的。就它的翻译是不固定的,也就是说IC内部永远只有一个硬件中断号,转换成另外一个硬件中断号的一个作用,它是硬件变硬件,只有进了linux以后,它才是一个软件中断号,这个软件中断号是和Linux是绑定的,只有你跑了Linux系统,它才是这样的一个变化,你明白吗?

老师,我懂了,所以就是有了Linux gic后面才根据软件变成软件中断号,前面级联的就是硬件中断号变成另外一个硬件中断号,这个理解有没有问题?

答:是的


相关笔记